home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2002 November / SGI IRIX Base Documentation 2002 November.iso / usr / share / catman / p_man / cat2 / standard / signal.z / signal
Encoding:
Text File  |  2002-10-03  |  5.6 KB  |  133 lines

  1.  
  2.  
  3.  
  4. SSSSIIIIGGGGNNNNAAAALLLL((((2222))))                                                            SSSSIIIIGGGGNNNNAAAALLLL((((2222))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      signal - software signal facilities (System V)
  10.  
  11. CCCC SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  12.      ####iiiinnnncccclllluuuuddddeeee <<<<ssssiiiiggggnnnnaaaallll....hhhh>>>>
  13.  
  14.      _CCCC_::::
  15.        vvvvooooiiiidddd ((((****ssssiiiiggggnnnnaaaallll ((((iiiinnnntttt ssssiiiigggg,,,, vvvvooooiiiidddd ((((****ffffuuuunnnncccc))))(((())))))))))))(((())));;;;
  16.      _CCCC_++++_++++_::::
  17.        vvvvooooiiiidddd ((((****ssssiiiiggggnnnnaaaallll ((((iiiinnnntttt ssssiiiigggg,,,, vvvvooooiiiidddd ((((****ffffuuuunnnncccc))))((((iiiinnnntttt))))))))))))((((iiiinnnntttt))));;;;
  18.  
  19.      _####_iiii_ffff ______XXXX_OOOO_PPPP_EEEE_NNNN______SSSS_OOOO_UUUU_RRRR_CCCC_EEEE
  20.        vvvvooooiiiidddd ((((****ssssiiiiggggnnnnaaaallll ((((iiiinnnntttt ssssiiiigggg,,,, vvvvooooiiiidddd ((((****ffffuuuunnnncccc))))((((iiiinnnntttt))))))))))))((((iiiinnnntttt))));;;;
  21.      _####_eeee_nnnn_dddd_iiii_ffff
  22.  
  23. DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  24.      _ssss_iiii_gggg_nnnn_aaaa_llll allows the calling process to choose one of three ways in which it
  25.      is possible to handle the receipt of a specific signal.  _s_i_g specifies
  26.      the signal and _f_u_n_c specifies the choice.
  27.  
  28.      For a list of valid signals and a general description of the signal
  29.      mechanism please see _ssss_iiii_gggg_nnnn_aaaa_llll(5).
  30.  
  31.      [EINVAL]  _ssss_iiii_gggg_nnnn_aaaa_llll will fail if _s_i_g is an illegal signal number, including
  32.                SSSSIIIIGGGGKKKKIIIILLLLLLLL and SSSSIIIIGGGGSSSSTTTTOOOOPPPP.
  33.  
  34.      [EINVAL]  _ssss_iiii_gggg_nnnn_aaaa_llll will fail if an illegal operation is requested (for
  35.                example, ignoring SSSSIIIIGGGGCCCCOOOONNNNTTTT, which is ignored by default).
  36.  
  37. SSSSEEEEEEEE AAAALLLLSSSSOOOO
  38.      kill(1), intro(2), blockproc(2), kill(2), pause(2), ptrace(2),
  39.      sigaction(2), sigset(2), wait(2), setjmp(3C), sigvec(3B),
  40.      pthread_kill(3P), signal(5)
  41.  
  42. DDDDIIIIAAAAGGGGNNNNOOOOSSSSTTTTIIIICCCCSSSS
  43.      Upon successful completion, _ssss_iiii_gggg_nnnn_aaaa_llll returns the previous value of _f_u_n_c for
  44.      the specified signal _s_i_g.  Otherwise, a value of _SSSS_IIII_GGGG______EEEE_RRRR_RRRR is returned and
  45.      _e_r_r_n_o is set to indicate the error.  _SSSS_IIII_GGGG______EEEE_RRRR_RRRR is defined in the header
  46.      file <_s_y_s/_s_i_g_n_a_l._h>.
  47.  
  48. WWWWAAAARRRRNNNNIIIINNNNGGGGSSSS
  49.      Signals raised by any instruction in the instruction stream, including
  50.      SSSSIIIIGGGGFFFFPPPPEEEE, SSSSIIIIGGGGIIIILLLLLLLL, SSSSIIIIGGGGEEEEMMMMTTTT, SSSSIIIIGGGGBBBBUUUUSSSS, and SSSSIIIIGGGGSSSSEEEEGGGGVVVV, will cause infinite loops if
  51.      their handler returns, or the action is set to SSSSIIIIGGGG____IIIIGGGGNNNN.... This is because
  52.      the exception PC at the time of the signal points to the instruction that
  53.      raised the exception or signal, and resuming the process will re-execute
  54.      that same instruction.
  55.  
  56.      The POSIX signal routines (_s_i_g_a_c_t_i_o_n(2), _s_i_g_p_e_n_d_i_n_g(2), _s_i_g_p_r_o_c_m_a_s_k(2),
  57.      _s_i_g_s_u_s_p_e_n_d(2), _s_i_g_s_e_t_j_m_p(3)), and the 4.3BSD signal routines (_s_i_g_v_e_c(3B),
  58.      _s_i_g_n_a_l(3B), _s_i_g_b_l_o_c_k(3B), _s_i_g_p_a_u_s_e(3B), _s_i_g_s_e_t_m_a_s_k(3B)) must NEVER be
  59.      used with _s_i_g_n_a_l(2) or _s_i_g_s_e_t(2).
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. SSSSIIIIGGGGNNNNAAAALLLL((((2222))))                                                            SSSSIIIIGGGGNNNNAAAALLLL((((2222))))
  71.  
  72.  
  73.  
  74.      Before entering the signal-catching function, the value of _f_u_n_c for the
  75.      caught signal will be set to SSSSIIIIGGGG____DDDDFFFFLLLL unless the signal is SSSSIIIIGGGGIIIILLLLLLLL,
  76.      SSSSIIIIGGGGTTTTRRRRAAAAPPPP, or SSSSIIIIGGGGPPPPWWWWRRRR.  This means that before exiting the handler, a _ssss_iiii_gggg_nnnn_aaaa_llll
  77.      call is necessary to again set the disposition to catch the signal.
  78.  
  79.      Note that handlers installed by _ssss_iiii_gggg_nnnn_aaaa_llll execute with _n_o signals blocked,
  80.      not even the one that invoked the handler.
  81.  
  82.  
  83.  
  84.  
  85.  
  86.  
  87.  
  88.  
  89.  
  90.  
  91.  
  92.  
  93.  
  94.  
  95.  
  96.  
  97.  
  98.  
  99.  
  100.  
  101.  
  102.  
  103.  
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.                                                                         PPPPaaaaggggeeee 2222
  130.  
  131.  
  132.  
  133.